package it.crosato.stage.server.model.retriever;

import java.util.Vector;

import it.crosato.stage.shared.exceptions.RetrievingException;
import it.crosato.stage.shared.objects.EntityDefinition;

public interface IOrganismsListRetriever {

	/**
	 * Recupera la lista degli organismi disponibili gestendo internamente
	 * le interazioni con la banca dati interna e KEGG
	 * @param time tempo di scadenza nella banca dati interna
	 * @return la lista delle definizioni degli organismi disponibili
	 * @throws RetrievingException se si verificano problemi nel recupero
	 */
	public abstract Vector<EntityDefinition> getOrganismsList(long time) throws RetrievingException;

}